In [1]:
import pandas as pd
In [2]:
cities = pd.Series(
    {'Dnepr': 1000000, 'Kiev': 3000000, 'Paris': 2300000, 'Berlin': 3800000},
    index=['Dnepr', 'Paris', 'Berlin', 'Milan']
)
cities
Out[2]:
Dnepr     1000000.0
Paris     2300000.0
Berlin    3800000.0
Milan           NaN
dtype: float64
In [3]:
cities.isnull()
Out[3]:
Dnepr     False
Paris     False
Berlin    False
Milan      True
dtype: bool
In [5]:
cities.notnull()
Out[5]:
Dnepr      True
Paris      True
Berlin     True
Milan     False
dtype: bool
In [6]:
cities > 1000000
Out[6]:
Dnepr     False
Paris      True
Berlin     True
Milan     False
dtype: bool
In [7]:
cities['Dnepr']
Out[7]:
1000000.0
In [8]:
cities[cities.isnull()]
Out[8]:
Milan   NaN
dtype: float64
In [9]:
cities[ cities.notna() ]
Out[9]:
Dnepr     1000000.0
Paris     2300000.0
Berlin    3800000.0
dtype: float64
In [10]:
cities[ cities > 1000000 ]
Out[10]:
Paris     2300000.0
Berlin    3800000.0
dtype: float64
In [12]:
# & = and
# | = or
cities[ (cities > 1000000) & (cities < 3000000) ]
Out[12]:
Paris    2300000.0
dtype: float64
In [14]:
cities[ (cities > 100000) & (cities != 2300000) ]
Out[14]:
Dnepr     1000000.0
Berlin    3800000.0
dtype: float64
In [17]:
cities[ ~(cities > 3000000) & (cities.notnull())  ]
Out[17]:
Dnepr    1000000.0
Paris    2300000.0
dtype: float64
In [18]:
for index, value in cities.items():
    print(f'Index: {index}, Value: {value}')
Index: Dnepr, Value: 1000000.0
Index: Paris, Value: 2300000.0
Index: Berlin, Value: 3800000.0
Index: Milan, Value: nan
In [ ]: